R 語言是一款統計程式語言,不過大部分的人會不懂沒學過統計要如何使用?但是在職場上常常都需要繪製圖表,很多人還在使用excel作為畫圖的工具,在這裡我想一邊學習如何使用 R 做資料分析,一邊透過po文的方式記錄讀書心得。在做資料分析的第一件事情就是去學該如何畫圖, R 可以透過簡單的語法把資料繪製成你想要圖表。
這篇文章是要使用 ggplot2 做資料視覺化,簡單來說就是把一筆資料的內部資訊透過畫圖來呈現。ggplot2 是一個 R 的package,當你要使用package時,需使用library這個指令來載入。因為 ggplot2 包含在 tidyverse 這個package的內部,所以我們載入 tidyverse 即可。
library(tidyverse)
如果你沒有 tidyverse 這個package,那就輸入以下指令進行下載。
install.packages("tidyverse")
載入 tidyverse 後,內部也同時包含了很多資料。以下我們來看看mpg這筆資料,他是蒐集了38種車型的觀察資料。
mpg
從上面我們可以看到 mpg 是234 x 11 的資料框型態,其中有234筆資料,以及11種變因。接著我們可以透過 ?mpg 去查看那些變因代表的意思,如下:
1.manufacturer:manufacturer name
2.model:model name
3.displ:engine displacement, in litres
4.year:year of manufacture
5.cyl:number of cylinders
6.trans:type of transmission
7.drv:the type of drive train, where f = front-wheel drive, r = rear wheel drive, 4 = 4wd
8.cty:city miles per gallon
9.hwy:highway miles per gallon
10.fl:fuel type
11.class:"type" of car
其中displ代表的意思是車子的引擎大小,hwy代表的意思是車子在高速公路上的燃油效率。在相同行駛距離的情況下,低燃油效率的車子需要消耗的燃料會比高燃油效率的車子還來的高。
那我們首先可以先來繪製一張 mpg 的圖表,以displ當橫軸,hwy當縱軸。
ggplot(data=mpg)+
geom_point(mapping=aes(x=displ,y=hwy))
從這個圖表可以很容易看出displ跟hwy之間有負相關的關係,這從資料框中並不容易看到。也就是說,資料顯示大引擎的車子使用的燃料比小車子還多。
我們來看看上面的程式碼,其中 ggplot() 可以繪製一個灰底的圖表,他的參數是data,接著 geom_point 這個函數是用來繪製散佈圖的,除了散佈圖以外, geom 還可以繪製各種不同的圖表,而 aes() 中的x與y參數即代表什麼變數要映射到x軸以及y軸, aes() 還有其他一些較為複雜的語法,我們之後會慢慢看到。
我們也可以透過一些簡單的語法來查看資料。
nrow(mpg)
ncol(mpg)
glimpse(mpg)
head(mpg)
從 glimpse() 和 head() 這兩個語法我們可以看到,他們都是可以"稍微"展示一下資料內部的形式。而nrow跟ncol是用來查看資料的行列個數的。
本次的介紹就到這裡,下一次會介紹 aes() 的操作,以及其他圖表的繪製方式,謝謝大家。
書名應該是"R資料科學"吧哈哈
Hadley Wichham & Garrett Grolemund 寫的那本
哈哈哈哈,對~被你發現了XD